package com.lingjtx.common.core.constant;

public enum DeviceOpType {

    // 日志类型：1-设备下发操作；2-设备在线离线；3-设备警告；
    // 设备在线离线:ONLINE，OFFLINE
    // staSwitch:开合闸
    SETTINGS("设置安全参数", "settings", (byte) 1),
    ONLINE("设备在线", "online", (byte) 2),
    OFFLINE("设备离线", "offline", (byte) 2),
    STA_SWITCH("分合闸","staSwitch", (byte) 3),

    ADD("添加设备", "add", (byte) 1),
    DELETE("删除设备", "delete", (byte) 1),
    UPDATE("修改设备信息", "update", (byte) 1),
    LEAKAGE_CHECK("漏电自检", "leakage_check", (byte) 1),
    REFRESH("刷新设备数据", "refresh", (byte) 1),
    DEFAULT("下发操作", "default", (byte) 1)
    ;

    private String name;// 操作名称
    private String value;
    private byte tag; // 类别

    DeviceOpType(String name, String value, byte tag) {
        this.name = name;
        this.value = value;
        this.tag = tag;
    }

    public static DeviceOpType ofValue(String v) {
        for (DeviceOpType value : DeviceOpType.values()) {
            if (value.getValue().equals(v)) {
                return value;
            }
        }
        return DEFAULT;
    }

    public String getName() {
        return name;
    }

    public String getValue() {
        return value;
    }

    public byte getTag() {
        return tag;
    }

    @Override
    public String toString() {
        return this.getValue();
    }
}
